package controlador;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.text.ParseException;
import java.util.Date;

import modelo.Usuario;

import vista.frmHome;

public class ControladorHome implements ActionListener{

	private frmHome formulariohome;
	private static final String root = "administrador";
	
	public ControladorHome(Usuario usuario){
		super();
		formulariohome = new frmHome();
		formulariohome.setVisible(true);
		formulariohome.setLocationRelativeTo(null);
		formulariohome.AgregarEscuchadores(this);
		if (!usuario.getId().toLowerCase().equals(this.root)){
			formulariohome.getMnuiusuario().setEnabled(false);
		}
	}
	
	@Override
	public void actionPerformed(ActionEvent e) {
		String actionCommand = e.getActionCommand();
			if (actionCommand.equals("Gestionar Clientes")) {
				new ControladorGestionarCliente();
			}		
			else if (actionCommand.equals("Gestionar Fresas")) {
				new ControladorGestionarFresa();
			}
			else if (actionCommand.equals("Gestionar Productos")) {
				new ControladorGestionarProducto();
			}
			else if(actionCommand.equals("Gestionar Ventas ")){
				try {
					new ControladorGestionarVenta();
				} catch (ParseException e1) {
					e1.printStackTrace();
				}
			}
			else if(actionCommand.equals("Gestionar Compras")){
				new ControladorGestionarCompra();
			}
			else if(actionCommand.equals("Gestionar Pagos")){
				new ControladorGestionarPago();
			}
			else if(actionCommand.equals("Gestionar Usuario")){
				new ControladorGestionarUsuario();
			}
			else if(actionCommand.equals("Gestionar Unidades")){
				new ControladorGestionarUnidades();
			}
			else if(actionCommand.equals("Consultas de Deudas de los Clientes")){
				new ControladorConsultarDeudaCliente();
			}
			else if(actionCommand.equals("Salir")){
				if (formulariohome.getMensaje().showConfirmDialog(formulariohome, "�Esta seguro que desea Salir de SACFRE?", "SACFRE", formulariohome.getMensaje().YES_NO_OPTION)==formulariohome.getMensaje().YES_OPTION){
					Respaldar_Base_Datos();
					System.exit(0);
				}
			}
	}

	private void Respaldar_Base_Datos() {
	       try {
	    	   String fecha= new Date().toLocaleString();
	    	   String fecha1= "("+fecha.substring(0, 2)+"-"+fecha.substring(3, 5)+"-"+fecha.substring(6, 10)+")";
	    	   Runtime.getRuntime ().exec ("pg_dump -F c -b -v -f /home/elam/Escritorio/SACFRE/bd/SACFRE"+fecha1+".backup SACFRE");
	       } catch (IOException e) {
	       }
	}
}
